var lang = require("./lang.js");

/**
 * 格式化时间
 */
function formatTime(date) {
  var year = date.getFullYear()
  var month = date.getMonth() + 1
  var day = date.getDate()
  var hour = date.getHours()
  var minute = date.getMinutes()
  var second = date.getSeconds()
  return [year, month, day].map(formatNumber).join('/') + ' ' + [hour, minute, second].map(formatNumber).join(':')
}

/**
 * 格式化数组
 */
function formatNumber(n) {
  n = n.toString()
  return n[1] ? n : '0' + n
}

/**
 * 设置TabBar
 */
function setTabBar(config){
  var L = lang.get(); //获取所有语言包
  wx.setTabBarStyle({
    color: config.XcxTabColor,
    selectedColor: config.XcxTabSelectedColor,
    backgroundColor: config.XcxTabBackgroundColor,
    borderStyle: config.XcxTabBorderStyle,
  });
  wx.setTabBarItem({
    index: 0,
    text: L.Home,
  });
  wx.setTabBarItem({
    index: 1,
    text: L.ClassName,
  });
  wx.setTabBarItem({
    index: 2,
    text: L.ShoppingCart,
  });
  wx.setTabBarItem({
    index: 3,
    text: L.CustomerService,
  });
  wx.setTabBarItem({
    index: 4,
    text: L.My,
  });
}

/**
 * 设置导航栏(app.js不能调用getApp()函数）
 */
function setNavigationBar(title){
  wx.setNavigationBarTitle({
    title: title
  });
  var app = getApp();
  var bgColor = app.globalData.Config.XcxThemeColor;
  wx.setNavigationBarColor({
    frontColor: '#ffffff',
    backgroundColor: bgColor
  });
}

/**
 * 获取联系方式数据
 */
function getContact(config){
  var L = lang.get();
  var data = {
    L: L,
    Contact: config.Contact,
    Mobile: config.Mobile,
    Telephone: config.Telephone,
    Email: config.Email,
    Address: config.Address,
    Latitude: config.GcjLatitude,
    Longitude: config.GcjLongitude,
    Markers: [{
      latitude: config.GcjLatitude,
      longitude: config.GcjLongitude,
      callout: {
        content: config.Company,
        color: "#ffffff",
        fontSize: "12",
        borderRadius: "8",
        bgColor: "#ff3300",
        padding: "6",
        boxShadow: "",
        display: "ALWAYS"
      }
    }]
  };
  return data;
}

/**
 * 设置ic邀请码参数
 */
function setIc(e){
  if (e.ic) {
    wx.setStorageSync('ic', e.ic);
  }
}

/**
 * 判断是否已经登录
 */
function isLogin() {
  var app = getApp();
  var member = app.globalData.Member;
  if (member && member.MemberID > 0) {
    return true;
  } else {
    return false;
  }
}

/**
* 坐标转换，百度地图坐标转换成腾讯地图坐标
* lng 腾讯经度（pointy）
* lat 腾讯纬度（pointx）
* 经度>纬度
*/

function bMapToQQMap(lng, lat) {
  if (lng == null || lng == '' || lat == null || lat == '')
  return [lng, lat];
  var x_pi = 3.14159265358979324;
  var x = parseFloat(lng) - 0.0065;
  var y = parseFloat(lat) - 0.006;
  var z = Math.sqrt(x * x + y * y) - 0.00002 * Math.sin(y * x_pi);
  var theta = Math.atan2(y, x) - 0.000003 * Math.cos(x * x_pi);
  var lng = (z * Math.cos(theta)).toFixed(7);
  var lat = (z * Math.sin(theta)).toFixed(7);
  return [lng, lat];
}
  
  /**
  * 坐标转换，腾讯地图转换成百度地图坐标
  * lng 腾讯经度（pointy）
  * lat 腾讯纬度（pointx）
  * 经度>纬度
  */
  
  function qqMapToBMap(lng, lat) {
  if (lng == null || lng == '' || lat == null || lat == '')
  return [lng, lat];
  var x_pi = 3.14159265358979324;
  var x = parseFloat(lng);
  var y = parseFloat(lat);
  var z = Math.sqrt(x * x + y * y) + 0.00002 * Math.sin(y * x_pi);
  var theta = Math.atan2(y, x) + 0.000003 * Math.cos(x * x_pi);
  var lng = (z * Math.cos(theta) + 0.0065).toFixed(5);
  var lat = (z * Math.sin(theta) + 0.006).toFixed(5);
  return [lng, lat];
  }

  //2.强制保留2位小数，如：2，会在2后面补上00.即2.00
  function toDecimal2(x) {
    var f = parseFloat(x);
    if (isNaN(f)) {
     return false;
    }
    var f = Math.round(x*100)/100;
    var s = f.toString();
    var rs = s.indexOf('.');
    if (rs < 0) {
     rs = s.length;
     s += '.';
    }
    while (s.length <= rs + 2) {
     s += '0';
    }
    return s;
 }

module.exports = {
  bMapToQQMap:bMapToQQMap,
  qqMapToBMap:qqMapToBMap,
  formatTime: formatTime,
  setTabBar: setTabBar,
  setNavigationBar: setNavigationBar,
  getContact: getContact,
  setIc: setIc,
  isLogin: isLogin,
  toDecimal2:toDecimal2
}
